iT邦幫忙

2026 iThome 鐵人賽

DAY 5
0
AI Engineering

從 Prompt 到自主決策:用 Python × Agentic Workflow 實作生活助理系列 第 5

讓程式處理多筆資料:List、Loop 與 Agent 的記憶迴圈

  • 分享至 

  • xImage
  •  

在上篇文章中,我們討論了 if / else 條件判斷與 AI Agent 自主決策的差別。
但在實際應用中,不論是傳統程式還是 AI Agent,都不會只處理「單一資料」或執行「單一次判斷」。例如:生活助理需要檢查你接下來一整週的行程、比對多個地點的天氣預報,或者記住你們過去好幾輪的對話內容。
要處理這些「一整串資料」與「重複進行的動作」,我們就需要用到 Python 的基礎核心 —— List(串列) 與 Loop(迴圈)。
什麼是 List(串列)?
先前我們學到變數可以儲存單一資料:

todo = "整理會議記錄"

但如果今天有多個待辦事項,寫成好多個變數會非常繁瑣。這時候我們可以使用 List,把多筆資料放在同一個「清單」裡:

todo_list = ["整理會議記錄", "回覆客戶 Email", "預約下午茶地點"]
print(todo_list)

執行結果:
['整理會議記錄', '回覆客戶 Email', '預約下午茶地點']
List 中的每一個項目都有位置編號(索引 Index),而且 Python 是從 0 開始計算的:

print(todo_list[0])  # 取得第一個項目

執行結果:
整理會議記錄
使用 for 迴圈逐一處理資料
有了資料清單後,我們需要讓程式「一個一個拿出來處理」。這時候就可以使用 for 迴圈。
例如,讓程式幫我們印出每一項待辦事項:

todo_list = ["整理會議記錄", "回覆客戶 Email", "預約下午茶地點"]

print("今天的待辦事項:")
for item in todo_list:
    print("- " + item)

執行結果:

今天的待辦事項:
- 整理會議記錄
- 回覆客戶 Email
- 預約下午茶地點

程式會自動走訪 todo_list 中的每一個項目,逐一執行印出,直到整份清單處理完畢。
結合條件判斷:篩選資料
我們也可以將條件判斷與 for 迴圈結合。假設我們有一週的天氣預報資料,希望程式自動找出哪些天需要帶傘:

weekly_weather = ["sunny", "rain", "cloudy", "rain", "sunny"]

day = 1
for weather in weekly_weather:
    if weather == "rain":
        print(f"第 {day} 天會下雨,記得帶傘!")
    else:
        print(f"第 {day} 天天氣晴朗或多雲。")
    day = day + 1

List 與 Loop 在 AI Agent 中扮演什麼角色?
看似基礎的 List 和 迴圈,其實是建構 AI Agent 底層運作不可或缺的核心:

  1. Agent 的「對話記憶」(Chat History)
    AI 大模型(LLM)本身是「無狀態」的,它不會自動記住你上一句說了什麼。AI 助理之所以能跟你順暢對話,是因為程式在背景維護了一個 List,把每一輪的對話訊息都裝進去:
# Agent 的歷史對話紀錄清單
chat_history = [
    "使用者:你好,請幫我規劃行程。",
    "AI:沒問題!請問您要去哪裡?",
    "使用者:我想去台北。"
]

每次你傳送新訊息時,程式就會把它 append(新增)到這個 List 的末端,再整包發送給 AI,這就是 Agent 擁有「記憶」的秘密。
2. Agent 的「思考與執行迴圈」(Agent Loop)
當我們給 AI Agent 一個複雜任務時,它不會只回答一次就結束,而是會在背景進入一個 迴圈(Loop):
思考→行動→觀察結果
這個迴圈會一直重複執行,直到 AI 判斷「任務已完成」才會跳出迴圈,把最終結果回傳給使用者。
今天學到什麼?
今天我們掌握了處理多筆資料與重複任務的基本功:
List(串列):將多個資料收納在同一個清單中(也是 Agent 紀錄歷史對話的基礎)。
for 迴圈:自動走訪清單項目(也是 Agent 重複「思考與執行」的底層機制)。
結合條件判斷:在重複過程中進行篩選與邏輯處理。
擁有了變數、判斷式、清單與迴圈的概念後,下一篇我們將會介紹處理「結構化資料」的重要工具 —— Dictionary(字典)!


上一篇
讓程式開始做決定:if、elif、else
下一篇
讓資料擁有結構與名稱:Dictionary 與 Agent 的資料傳遞
系列文
從 Prompt 到自主決策:用 Python × Agentic Workflow 實作生活助理9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言